Adding data to a model, whether it is for aggregation, analysis or decision-making purposes, is a frequent and popular operation in software systems. Some common examples of this include point of sale systems, where individual terminals contribute data which is aggregated into a larger whole and distributed budgeting and forecasting systems where line managers individually define local balance sheets which roll up to higher levels of an organization for executive discussions.